package com.baizhi.shane.sys.vo;

import com.baizhi.shane.sys.entity.SysDivision;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author 闻柏智
 * @date 2023/11/26 15:44:46
 */

@ApiModel("行政区划树形结构")
@Data
public class SysDivisionTreeVO  {
    /**
     * 主键
     */
    private Long id;

    /**
     * 创建人ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long createBy;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新人ID
     */
    @TableField(fill = FieldFill.UPDATE)
    private Long updateBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 删除人ID
     */
    private Long delBy;

    /**
     * 删除时间
     */
    private Date delTime;

    /**
     * 逻辑删除
     */
    @TableField(fill = FieldFill.INSERT)
    private Integer delFlag;

    /**
     * 行政区划代码不补0
     */
    private String divisionCode;

    /**
     * 行政区划代码补0
     */
    private String fullCode;

    /**
     * 名字
     */
    private String divisionName;

    /**
     * 0国家，1省份，3地市，4区县
     */
    private Integer divisionLevel;

    /**
     * 上级ID
     */
    private Long parentId;

    /**
     * 上级区划代码
     */
    private String parentCode;

    /**
     * 上级区划名字
     */
    private String parentName;

    /**
     * 行政区划完整名字，斜杠分割
     */
    private String fullname;

    /**
     * 经度
     */
    private BigDecimal longitude;

    /**
     * 纬度
     */
    private BigDecimal latitude;
    @ApiModelProperty("子节点列表")
    private List<SysDivisionTreeVO> children;
}
